package com.lilei.bigdata.mr.provienceflow;

import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Partitioner;

import java.awt.*;
import java.util.HashMap;

public class ProviencePartitioner extends Partitioner<Text,FlowBean> {

    public static HashMap<String, Integer> proviceDict = new HashMap<String, Integer>();
    static{
        proviceDict.put("136", 0);
        proviceDict.put("137", 1);
        proviceDict.put("138", 2);
        proviceDict.put("139", 3);
    }
    @Override
    public int getPartition(Text key, FlowBean flowBean, int numPartitions) {
        String preFix = key.toString().substring(0,3);
        Integer proviceId = proviceDict.get(preFix);
        return proviceId== null?4:proviceId;
    }
}
